package com.huang.leetcode.doublePointer;

/**
 * @Author：CreateSequence
 * @Date：2020-07-29 11:50
 * @Description：最长公共前缀
 */
public class PB14 {

    public String longestCommonPrefix(String[] strs) {
        if (strs == null || strs.length == 0) {
            return "";
        }

        //获取第一个单词作为比较对象
        String res = strs[0];
        if (res.equals("")) {
            return "";
        }

        //遍历数组
        for (int i = 1; i < strs.length; i++) {
            String str = strs[i];
            if (str.equals("")) {
                return "";
            }

            //对比两字符串字符是否相同
            int j = 0;
            //遇到相同j就进1，遇到不同就结束对比
            while (str.charAt(j) == res.charAt(j)) {
                j++;
                //字符串到底了就结束
                if (j >= res.length() || j >= str.length()) {
                    break;
                }
            }
            res = res.substring(0, j);

            //如果都没匹配到就直接返回空串
            if (res.equals("")) {
                return res;
            }
        }

        return res;
    }

}
